let obj = {}

let temp;

Object.defineProperty(obj, 'a', {
  // value: 2,
  // 是否可写
  // writable: false
  get() {
    // get和value不能同时定义
    console.log('你正在试图访问obj的a属性');
    return temp;
  },
  set(newValue) {
    console.log('你试图改变obj的a属性');
    temp = newValue;
  }
});

Object.defineProperty(obj, 'b', {
  value: 3,
  // 是否可枚举,默认是false
  // enumerable: true
});

Object.defineProperty(obj, 'c', {
  value: 5
});
obj.a = 1;
obj.a++;
console.log(obj.a);